/**
 * 导出数据到Excel文件
 * @param {Array} data 要导出的数据数组
 * @param {string} filename 导出文件名，默认为'export'
 */
export function exportExcel(data, filename = 'export') {
  if (!data || !data.length) {
    console.warn('导出数据为空');
    return;
  }

  // 创建工作表的数据
  const worksheet = [];
  
  // 添加表头
  const headers = Object.keys(data[0]);
  worksheet.push(headers);
  
  // 添加数据行
  data.forEach(item => {
    const row = headers.map(key => item[key] !== undefined && item[key] !== null ? item[key] : '');
    worksheet.push(row);
  });
  
  // 生成CSV格式
  let csvContent = worksheet.map(row => row.join(',')).join('\n');
  
  // 创建Blob对象
  const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });
  
  // 创建下载链接
  const link = document.createElement('a');
  
  // 创建URL
  const url = URL.createObjectURL(blob);
  link.setAttribute('href', url);
  link.setAttribute('download', `${filename}.csv`);
  link.style.visibility = 'hidden';
  
  // 添加到DOM
  document.body.appendChild(link);
  
  // 触发下载
  link.click();
  
  // 清理
  document.body.removeChild(link);
}

/**
 * 导出数据到CSV文件
 * @param {Array} data 要导出的数据数组
 * @param {string} filename 导出文件名，默认为'export'
 */
export function exportCSV(data, filename = 'export') {
  exportExcel(data, filename);
} 